Repository navigation
fix: разные варианты распределения и понятные счетчики нагрузки - #816
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Что изменено
Повторное автораспределение учитывает предыдущий подписанный план и возвращает другой сбалансированный состав. Ответ can_reroll заранее сообщает, существует ли альтернатива. В нагрузку добавлены assigned_before/assigned_after для полного числа назначенных проектов; legacy before/after сохраняют смысл незавершенных оценок.
Реализация / API
Необязательный previous_plan_token в existing preview endpoint; проверяются подпись, программа, возраст, revision и актуальные пулы. Замена будущего назначения не увеличивает дисбаланс незавершенной нагрузки; альтернативный цикл сохраняет нагрузку всех экспертов. Существующие назначения исключены из обменов. Невозможный вариант не предлагается. Ответ API расширен совместимо, atomic signed apply сохранен.
UI
Отдельный frontend: прямой общий preview всех кейсов/доступных экспертов, явные показатели назначено/осталось, скрытие недоступного reroll. API deploy первым.
Permissions
Managed-program permission и transaction lock без изменений. Проверки case/pool/team/slot/revision сохранены. Новые preview не пишут назначения/оценки и не отправляют письма.
Проверки
Acceptance criteria
Не проверено
Реальные пользователи/письма исключены из QA. Опубликованный UI проверяется с изолированным локальным API во frontend этапе.
Риски / migration
Без миграций; API deploy до frontend. Production вне scope.
Release verification: source CI 39882440895 and PostgreSQL CI 39882476522 passed 1330 tests each; PostgreSQL also passed 39 locking/vacancy tests. DEV deploy succeeded with pinned runtime image for the merge, pending migrations 0, runtime access check, smoke and Celery checks passed.
DEV validation completed: API merge c33295b and frontend merge de05a9327b9b29ceef5478dcec4f3ff605c260e6 have exactly the tested source trees. Published DEV resources passed browser checks at 1440/390 px against isolated local PostgreSQL: all-case defaults, four distinct rerolls each, unique-plan capability, workload labels, pool/project edits and local confirmation. No preview writes, real-user writes, mail, JS errors or 5xx. Four actual anonymous DEV GET routes passed. Dedicated QA processes and PostgreSQL stopped.